class Shape{
	public void draw(){}
	public void draw(String s){}
}

class Circle extends Shape{
	public void draw(){
		System.out.println("      *      ");
		System.out.println("    *   *    ");
		System.out.println("   *     *   ");
		System.out.println("   *     *   ");
		System.out.println("    *   *    ");
		System.out.println("      *      ");
	}
	public void draw(String s){
		System.out.println("       "+s+"      ");
		System.out.println("    "+s+"   "+s+"    ");
		System.out.println("   "+s+"     "+s+"   ");
		System.out.println("   "+s+"     "+s+"   ");
		System.out.println("    "+s+"   "+s+"    ");
		System.out.println("       "+s+"      ");
	}
}

class Rectengle extends Shape{
	public void draw(){
		System.out.println("***************");
		System.out.println("*             *");
		System.out.println("*             *");
		System.out.println("***************");
	}
	public void draw(String s){
		System.out.println("***************");
		System.out.println("*             *");
		System.out.println("*             *");
		System.out.println("***************");
	}
}

public class TestShape{
	public static void draw(Shape s){
		s.draw();
	}
	public static void draw(Shape s, String title){
		s.draw(title);
	}
	public static void main(String[]args){
		Shape s1 = new Circle();
		Shape s2 = new Rectengle();
		draw(s1);
		draw(s2);
		draw(s1, "+");
	}
}